#pragma once
#include "PoseHandler.hpp"
namespace adas
{
    class ExecutorImpl final : public Executor
    {
    public:
        explicit ExecutorImpl(const Pose& pose) noexcept;
        ~ExecutorImpl() noexcept = default;
        ExecutorImpl(const ExecutorImpl&) = delete;
        ExecutorImpl& operator=(const ExecutorImpl&) = delete;//初始化ExecutorImpl类的多种函数声明
    public:
        void Execute(const std::string& command) noexcept override;//外界输入接收函数  
        Pose Query(void) const noexcept override;//状态读取函数

    private:
        PoseHandler poseHandler;//PoseHandler类参量
    };
}